#include <stdio.h>
#include <signal.h>

void print(int signo)
{
	printf("catch signo : %d\n",signo);
	sleep(5);
}

void main()
{
	struct sigaction act = {};
	act.sa_handler = print;		//指定信号处理函数 
	sigemptyset(&act.sa_mask);	//信号处理期间屏蔽的信号，信号处理期间自动屏蔽相同信号 
	sigaddset(&act.sa_mask,SIGQUIT);
	//act.sa_flags = SA_ONESHOT;	//第二次默认
	act.sa_flags = SA_NOMASK;	//相同信号不屏蔽 
	sigaction(SIGINT,&act,0);
	while(1); 
}
